package com.sunday.minio.entity;

import lombok.Getter;

import javax.annotation.Nonnull;

/**
 * 批量上传请求实体
 *
 * @author zsy
 * @since 2023/10/16
 */
@Getter
public class Snowball {

    /** 将给定的流作为存储桶中的对象上传 */

    /**
     * 文件全路径    D:\app\minIO\447680d47859c66d417a7bbaaa70b21c.jpeg (文件名需要包含后缀，以便获取文件类型)
     */
    private String path;

    /** 将文件中的内容作为存储桶中的对象上传 */

    /**
     * 文件名  my-object-one.txt (文件名需要包含后缀，以便获取文件类型)
     */
    private String filename;

    /**
     * 文件字节
     */
    private byte[] bytes;

    public Snowball(@Nonnull String path) {
        this.path = path;
    }

    public Snowball(@Nonnull String filename, @Nonnull byte[] bytes) {
        this.filename = filename;
        this.bytes = bytes;
    }

    public static Snowball of(@Nonnull String path) {
        return new Snowball(path);
    }

    public static Snowball of(@Nonnull String filename, @Nonnull byte[] bytes) {
        return new Snowball(filename, bytes);
    }

}
